This invention relates in general to an information processing system, and more particularly, to a circuit for altering operation codes of a macroinstruction or an instruction.
A microprogram control system is a control system for information processing systems of the type proposed by M. V. Wilkes et al in an article entitled "Microprogramming and the Design of Control Circuits in an Electrical Digital Computer" found in the proceedings of the Cambridge Philosphical Society, Volume 49, pages 230-238 and by Yaohan Chu as an article entitled "Digital Computer Design Fundamentals" on pages 246-247, FIG. 12.30. According to such a control system, an operation corresponding to a macroinstruction is decomposed into several basic operations, and the basic operations are respectivey defined as a microinstruction. In executing the macroinstruction, a macroinstruction signal is decoded by an address decoder, and the first address of a microprogram routine which consists of a plurality of microinstructions or microoders corresponding to the macroinstruction is accessed. Thereafter, the microprogram routine instructions of the routine are sequentially accessed and executed. When it is detected that the miroprogram routine corresonding to the macroinstruction has been fully completed, the execution of the macroinstruction is terminated.
As a memory for storing the microprogram routines, a ROM (read only memory) is usually employed In this case, the operation code of an identical macroinstruction alwys designates a predetermined microprogram routine corresponding to the macroinstruction and performs a fixed microprogram routine. By way of example, consider a case where the microprogram routine in the ROM is designed so as to execute the operation of addition (ADD) when the operation code of a macroinstruction word is `0001.` Then, whenever the operation code is `0001,` the ADD function is performed. Since it is usually impossible to rewrite the microprogram routine stored in the ROM during the program execution, another microprogram cannot be addressed using the same macroinstruction.
Where it is necessary to enable many kinds of instructions to be executed, the number of bits of the operation code of an instruction word must be made large. This naturally leads to an increase in the instruction word length which may not be desirable or possible depending upon the system. For example, when four digits or bits have been assigned for the instruction word length, then 2.sup.4 or 16 different instructions may be addressed. When access to more than 16 instructions is required, prior art systems would be required to add one or more extra digits or bits to the original four digit instruction word.